22 research outputs found

    Multi-Threaded Mitigation of Radiation-Induced Soft Errors in Bare-Metal Embedded Systems

    Get PDF
    This article presents a software protection technique against radiation-induced faults which is based on a multi-threaded strategy. Data triplication and instructions flow duplication or triplication techniques are used to improve system reliability and thus, ensure a correct system operation. To achieve this objective, a relaxed lockstep model to synchronize the execution of both, redundant threads and variables under protection on different processing units is defined. The evaluation was performed by means of simulated fault injection campaigns in a multi-core ARM system. Results show that despite being considered techniques that imply an evident overhead in memory and instructions (Duplication With Comparison and Re-Execution – DWC-R and Triple Modular Redundancy – TMR), spreading the replicas in different instruction flows not only produce similar results than classic techniques, but also improves the computational and recovery time in presence of soft-errors. In addition, this paper highlights the importance of protecting memory-allocated data, since the instruction flow triplication is not enough to improve the overall system reliability.This work was funded by the Spanish Ministry of Economy and Competitiveness and the European Regional Development Fund through the following projects: ‘Evaluación temprana de los efectos de radiación mediante simulación y virtualización. Estrategias de mitigación en arquitecturas de microprocesadores avanzados’, (Ref: ESP2015-68245-C4-3-P, MINECO/FEDER, UE)

    Quasi Isolation QoS Setups to Control MPSoC Contention in Integrated Software Architectures

    Get PDF

    Analysis of Kernel Redundancy for Soft Error Mitigation on Embedded GPUs

    Get PDF
    The use of state-of-the-art commercial processors such as graphical processing units (GPUs) is becoming increasingly common in the New Space industry in order to ensure high performance and power efficiency. However, commercial GPUs are not designed to operate in a harsh environment and therefore different protection techniques need to be applied to mitigate the effects of radiation, including those produced by single events. This paper assesses the effectiveness of redundant kernel execution on tightly constrained embedded GPUs under proton irradiation, with results suggesting a significant improvement in the SDC cross-section without penalizing the stability of the whole system. In addition, the posterior error analysis shows that the CPU is the source of the majority of the events, which are mainly dominated by functional interrupts.This work has been supported by the Spanish Ministry of Science and Innovation as part of the PID2019-106455GB-C22 project

    Leveraging Hardware QoS to Control Contention in the Xilinx Zynq UltraScale+ MPSoC

    Get PDF
    The interference co-running tasks generate on each other’s timing behavior continues to be one of the main challenges to be addressed before Multi-Processor System-on-Chip (MPSoCs) are fully embraced in critical systems like those deployed in avionics and automotive domains. Modern MPSoCs like the Xilinx Zynq UltraScale+ incorporate hardware Quality of Service (QoS) mechanisms that can help controlling contention among tasks. Given the distributed nature of modern MPSoCs, the route a request follows from its source (usually a compute element like a CPU) to its target (usually a memory) crosses several QoS points, each one potentially implementing a different QoS mechanism. Mastering QoS mechanisms individually, as well as their combined operation, is pivotal to obtain the expected benefits from the QoS support. In this work, we perform, to our knowledge, the first qualitative and quantitative analysis of the distributed QoS mechanisms in the Xilinx UltraScale+ MPSoC. We empirically derive QoS information not covered by the technical documentation, and show limitations and benefits of the available QoS support. To that end, we use a case study building on neural network kernels commonly used in autonomous systems in different real-time domains.This work has been partially supported by the Spanish Ministry of Science and Innovation under grant PID2019-107255GB; the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 878752 (MASTECS) and the European Research Council (ERC) grant agreement No. 772773 (SuPerCom).Peer ReviewedPostprint (published version

    Dependability Evaluation of COTS Microprocessors via On-Chip debugging facilities

    Get PDF
    Este artículo presenta una herramienta de inyección de fallos y la metodología para la realización de campañas de inyección de Single-Event-Upsets (SEUs) en microprocesadores Commercial-off-the-shelf (COTS). Este método utiliza las ventajas que ofrecen las infraestructuras de depuración de los microprocesadores actuales, además del depurador estándar de GNU (GDB) para la ejecución y depuración de los programas de pruebas. Los experimentos desarrollados sobre microprocesadores reales, así como en las máquinas virtuales, demuestran la viabilidad y la flexibilidad de la propuesta como una solución de bajo costo para evaluar la fiabilidad de los microprocesadores COTS.This paper presents a fault injection tool and methodology for performing Single-Event-Upsets (SEUs) injection campaigns on Commercial-off-the-shelf (COTS) microprocessors. This method takes advantage of the debug facilities of modern microprocessors along with standard GNU Debugger (GDB) for executing and debugging benchmarks. The developed experiments on real boards, as well as on virtual machines, demonstrate the feasibility and flexibility of the proposal as a low-cost solution for assessing the reliability of COTS microprocessors.Este trabajo fue financiado por el Ministerio español de Economía y Competitividad y el Fondo Europeo de Desarrollo Regional con el proyecto "Evaluación Temprana de los Efectos de radiación Mediante simulación y virtualización. Estrategias de mitigación en arquitecturas de microprocesadores Avanzados "(Ref: ESP2015-68245-C4-3-P MINECO / FEDER, UE), y la Universidad Nacional de Colombia con el proyecto "Desarrollo de software Una métrica de Vulnerabilidad de registros en Microprocesadores COTS" (Cod HERMES: 28433)

    Empirical Mathematical Model of Microprocessor Sensitivity and Early Prediction to Proton and Neutron Radiation-Induced Soft Errors

    Get PDF
    A mathematical model is described to predict microprocessor fault tolerance under radiation. The model is empirically trained by combining data from simulated fault-injection campaigns and radiation experiments, both with protons (at the National Center of Accelerators (CNA) facilities, Seville, Spain) and neutrons [at the Los Alamos Neutron Science Center (LANSCE) Weapons Neutron Research Facility at Los Alamos, USA]. The sensitivity to soft errors of different blocks of commercial processors is identified to estimate the reliability of a set of programs that had previously been optimized, hardened, or both. The results showed a standard error under 0.1, in the case of the Advanced RISC Machines (ARM) processor, and 0.12, in the case of the MSP430 microcontroller.This work was supported in part by Spanish MINECO under Project ESP-2015-68245-C4-3-P and Project ESP-2015-68245-C4-4-P

    A Compact Model to Evaluate the Effects of High Level C++ Code Hardening in Radiation Environments

    Get PDF
    A high-level C++ hardening library is designed for the protection of critical software against the harmful effects of radiation environments that can damage systems. A mathematical and empirical model to predict system behavior in the presence of radiation induced faults is also presented. This model generates a quick evaluation and adjustment of several reliability vs. performance trade-offs, to optimize radiation hardening based on the proposed C++ hardening library. Several simulations and irradiation campaigns with protons and neutrons are used to build the model and to tune it. Finally, the effects of our hardening approach are compared with other hardened and non-hardened approaches.This work was funded by the Spanish Ministry of Economy and Competitiveness and the European Regional Development Fund through the following projects: ‘Evaluación temprana de los efectos de radiación mediante simulación y virtualización. Estrategias de mitigación en arquitecturas de microprocesadores avanzados’ and ‘Centro de Ensayos Combinados de Irradiación’, (Refs: ESP2015-68245-C4-3-P and ESP2015-68245-C4-4-P, MINECO/FEDER, UE)

    A software-only approach to enable diverse redundancy on Intel GPUs for safety-related kernels

    Get PDF
    Autonomous Driving (AD) systems rely on object detection and tracking algorithms that require processing high volumes of data at high frequency. High-performance graphics processing units (GPUs) have been shown to provide the required computing performance. AD also carries functional safety requirements such as diverse redundancy for critical software tasks like object detection. This implies that software must be executed redundantly (in a single GPU for efficiency reasons), and with some form of diversity so that a single fault does not cause the same error in both redundant executions. Unfortunately, high-performance GPUs lack explicit hardware means for diverse redundancy, and software-based solutions with limited guarantees have only been provided for NVIDIA GPUs. This paper presents a software-only solution to enable diverse redundancy on Intel GPUs achieving, for the first time, strong guarantees on the diversity provided. By smartly tailoring workload geometry and managing workload allocation to execution units with thread-level wrappers, we guarantee that redundant threads use physically diverse execution units, hence meeting diverse redundancy requirements with affordable performance overheads.This work has been partially supported by the Spanish Ministry of Science and Innovation under grant PID2019-107255GB-C21/AEI/ 10.13039/501100011033, and by the project AUTOtech.agil of the German Federal Ministry of Education and Research (support code 01IS22088I)Peer ReviewedPostprint (author's final draft

    A Comparison of FPGA and GPGPU Designs for Bayesian Occupancy Filters

    Get PDF
    Grid-based perception techniques in the automotive sector based on fusing information from different sensors and their robust perceptions of the environment are proliferating in the industry. However, one of the main drawbacks of these techniques is the traditionally prohibitive, high computing performance that is required for embedded automotive systems. In this work, the capabilities of new computing architectures that embed these algorithms are assessed in a real car. The paper compares two ad hoc optimized designs of the Bayesian Occupancy Filter; one for General Purpose Graphics Processing Unit (GPGPU) and the other for Field-Programmable Gate Array (FPGA). The resulting implementations are compared in terms of development effort, accuracy and performance, using datasets from a realistic simulator and from a real automated vehicle.This work has been partially funded by the Spanish Ministry of Economy and Competitiveness with the National Projects TCAP-AUTO (RTC-2015-3942-4) and NAVEGASE (DPI2014-53525-C3-1-R)

    Fault tolerance in critical aerospace embedded systems: Multi-threaded mitigation, non-intrusive compiler-guided hardening, and early prediction of proton and neutron induced soft errors

    Get PDF
    Hoy día, existe una creciente demanda de las capacidades computacionales en sistemas críticos, donde los estados inesperados o inoperantes no son aceptables. Algunos de estos sistemas funcionan en entornos hostiles, sufriendo un comportamiento anómalo (faults), tanto en el software como en el hardware. Con objeto de solucionar esta problemática, se está recurriendo a la utilización de soluciones de computación, que explotan las nuevas características presentes en los microprocesadores de última generación. Entre estas características, destaca un mayor número de núcleos, mejor rendimiento computacional y menor consumo energético. Esta evolución de los microprocesadores es debida, entre otros factores, a la mejora en el proceso de fabricación fotolitográfico, sin embargo, este proceso está reduciendo progresivamente la tolerancia de los nuevos microprocesadores a los fallos inducidos por la radiación, conocidos como Efecto de Evento Único (Single Event Effect - SEE). Destacando, entre las fuentes que generan un comportamiento anómalo, las fuentes naturales de radiación, como los rayos cósmicos, o las fuentes de radiación artificial, como las producidas por máquinas de radio-diagnóstico. En esta tesis, se propone varias estrategias para mejorar la fiabilidad de los sistemas críticos que operan en presencia de radiación ionizante, tanto en el espacio, como a nivel terrestre. En este contexto, la radiación ionizante puede alterar la salida de un sistema digital creando interferencias, fallos y alteraciones permanentes en los circuitos, entre otras muchas incidencias. Como resultado, los sistemas críticos pueden comportarse de manera inesperada, produciendo resultados erróneos o entrando en estados no operativos, que requieran un mecanismo externo para recuperar un funcionamiento correcto (watchdogs, interrupciones temporizadas). En la bibliografía, se encuentra que las técnicas basadas en redundancia, aplicables tanto a hardware como a software, son las soluciones más efectivas para detectar y mitigar este tipo de comportamiento inesperado. Estas técnicas basadas en redundancia, presentan una alta variabilidad, dado que puede aplicarse a estructuras de diferente complejidad. En el caso de redundancia software, se puede utilizar a nivel de instrucciones de ensamblador, accesos de memoria, funciones o métodos, incluso a nivel de procesos o hilos. Es importante destacar que, la variabilidad de las diferentes técnicas de mitigación de fallos, provoca una alta complejidad de la predicción del efecto de estas técnicas en el conjunto del sistema. De manera paradójica, la aplicación de estas técnicas de endurecimiento a algunos elementos de un sistema, en ocasiones, puede dar lugar a un aumento de la susceptibilidad del sistema a fallos inducidos por radiación, por consiguiente, a una reducción significativa de la fiabilidad. Esta paradoja, es debida, al aumento de los sobrecostes en los recursos utilizados, o al incremento computacional de dicha técnica de endurecimiento. De manera general, con objeto de reducir la susceptibilidad a fallos inducidos por la radiación, en diferentes sistemas críticos, en esta tesis, se pretende mejorar la fiabilidad, adaptando o proporcionando nuevas técnicas y herramientas para el endurecimiento software en microprocesadores de última generación. Para ello, se han desarrollo dos técnicas, la primera se centra en la búsqueda automática de soluciones maximizando la fiabilidad; la segunda técnica desarrollada, consiste en un endurecimiento software basado en redundancia, optimizado para obtener un mayor rendimiento computacional. Además, se ha desarrollado un nuevo modelo matemático semi-empírico, para evaluar y predecir los fallos inducidos por radiación. La primera de las técnicas desarrolladas, explora, de manera eficiente, soluciones que maximicen la fiabilidad, buscando optimizaciones y endurecimientos que aumenten el rendimiento del sistema, reduzcan los recursos utilizados y, al mismo tiempo, aumenten la cobertura frente a fallos. Con objeto de optimizar el rendimiento y el uso de recursos de las aplicaciones y circuitos, en esta tesis, se utilizan técnicas de aprendizaje automático y algoritmos de búsqueda meta-heurísticos, inspirados en los sistemas naturales (algoritmos genéticos), optimizados con técnicas de optimización multiobjetivo basadas en el concepto de eficiencia de Pareto. Este algoritmo de búsqueda optimizado, permite mejorar al mismo tiempo el rendimiento del sistema, el uso de los recursos y la cobertura de fallos, ya que es capaz de explorar un espacio de soluciones multidimensional de manera eficiente. La aplicación de este algoritmo, permite alterar la generación de las aplicaciones, por parte del compilador, logrando obtener aplicaciones más fiables de forma no intrusiva, es decir, sin necesidad de modificar el código. La segunda de las técnicas desarrolladas, propone una mejora de las técnicas de endurecimiento clásicas, empleando esquemas paralelos basados en el multiprocesamiento simétrico y asimétrico (SMP y AMP, respectivamente). Con objeto de lograr un incremento en la fiabilidad, se han utilizado sistemas mononúcleo y multinúcleo, a los que se les ha eliminado la necesidad de un sistema operativo, con el fin de reducir los sobrecostes de recursos y aumentar el rendimiento, manteniendo la cobertura frente a fallos. Por último, se ha desarrollado un modelo semi-empírico que permite la evaluación y selección de las configuraciones más fiables. Además, el modelo también permite realizar un endurecimiento selectivo de los recursos críticos, antes de acometer una campaña de radiación acelerada. En el desarrollo del modelo, se emplea tanto datos históricos de campañas de radiación real, como los resultados de las campañas de inyección simulada de las aplicaciones. Así, el modelo es capaz de realizar una predicción temprana de la fiabilidad de las nuevas soluciones, antes de probarlas bajo radiación real en aceleradores de partículas. Para verificar el modelo, se realizaron pruebas de radiación acelerada de varias soluciones, desarrolladas en esta tesis, empleando protones en el Centro Nacional de Aceleradores (CNA) de Sevilla, y empleando neutrones en Los Álamos National Laboratory (LANL - USA)
    corecore